TensorFlow 示例


In [2]:
import numpy as np
import tensorflow as tf

使用 NumPy 生成假数据(phony data), 总共 100 个点


In [11]:
x_data = np.float32(np.random.rand(2, 100)) # 随机输入
y_data = np.dot([0.100, 0.200], x_data) + 0.300

In [8]:
import matplotlib.pyplot as plt

plt.plot(x_data[0], x_data[1])
plt.show()


构造一个线性模型


In [13]:
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b

最小化方差


In [14]:
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)

初始化变量


In [15]:
init = tf.initialize_all_variables()

启动图 (graph)


In [16]:
sess = tf.Session()
sess.run(init)

拟合平面


In [17]:
for step in xrange(0, 201):
    sess.run(train)
    if step % 20 == 0:
        print step, sess.run(W), sess.run(b)


0 [[-0.39730814  0.78100312]] [ 0.70812148]
20 [[-0.02802943  0.2445453 ]] [ 0.35175225]
40 [[ 0.07056037  0.19844007]] [ 0.31793553]
60 [[ 0.09211173  0.1968594 ]] [ 0.30619827]
80 [[ 0.09762823  0.19851676]] [ 0.30213928]
100 [[ 0.09923577  0.19942699]] [ 0.30073795]
120 [[ 0.09974473  0.19979294]] [ 0.30025452]
140 [[ 0.09991322  0.19992714]] [ 0.30008778]
160 [[ 0.09997027  0.19997466]] [ 0.30003026]
180 [[ 0.09998979  0.19999123]] [ 0.30001044]
200 [[ 0.09999648  0.19999696]] [ 0.30000359]

In [ ]: